package app
{
	public class StateConstants	{
		
		public static const STATE_BOOTSTRAP:String = "state/bootstrap";
		public static const STATE_CONSTRUCTION:String = "state/construction";
		public static const STATE_AQUISITION:String = "state/aquisition";
		public static const STATE_LOCALE_INJECTION:String = "state/localeInjection";
		public static const STATE_DISPLAY:String = "state/ready";

		public static const ACTION_BOOTSTRAPPED:String = "action/bootstrapped";
		public static const ACTION_CONSTRUCTED:String = "action/actorsConstructed";
		public static const ACTION_AQUIRED:String = "action/aquired";
		public static const ACTION_LOCALE_INJECTED:String = "action/localInjected";
		
		public static const CHANGED_BOOTSTRAP:String = "note/changed/bootstrap";
		public static const CHANGED_CONSTRUCTION:String = "note/changed/construction";
		public static const CHANGED_AQUISITION:String = "note/changed/aquisition";
		public static const CHANGED_LOCALE_INJECTION:String = "note/changed/localeInjection";
		public static const CHANGED_DISPLAY:String = "note/changed/display";		
		
		public static const  FSM_DECLARATION:XML = 
            <fsm initial={STATE_BOOTSTRAP}>
               <state 	name={STATE_BOOTSTRAP} 
               			changed={CHANGED_BOOTSTRAP}>
                   		<transition	action={ACTION_BOOTSTRAPPED} 
                   					target={STATE_CONSTRUCTION}
                   		/>
               </state>
               <state 	name={STATE_CONSTRUCTION} 
               			changed={CHANGED_CONSTRUCTION}>
	                   	<transition action={ACTION_CONSTRUCTED} 
	                   				target={STATE_AQUISITION}
	                   />
               </state>
               <state 	name={STATE_AQUISITION} 
               			changed={CHANGED_AQUISITION}>
	                   	<transition action={ACTION_AQUIRED} 
	                   				target={STATE_LOCALE_INJECTION}
	                   />
               </state>
                <state 	name={STATE_LOCALE_INJECTION} 
               			changed={CHANGED_LOCALE_INJECTION}>
	                   	<transition action={ACTION_LOCALE_INJECTED} 
	                   				target={STATE_DISPLAY}
	                   />
               </state>
               <state 	name={STATE_DISPLAY}
               			changed={CHANGED_DISPLAY}>
               			
	                   	/>
	                   
               </state>
              
        	</fsm>;
		
		
	}
}